﻿Imports System.Transactions
Imports CondorTravel.BE
Imports CondorTravel.DALC

Public Class SolicitudPaqueteBC
    Public Function InsertarSolicitudPaquete(ByVal objSolicitudPaqueteBE As SolicitudPaqueteBE, ByRef bExito As Boolean, ByRef sMensaje As String) As Boolean

        Dim objScope As TransactionScope
        objScope = New TransactionScope


        Using objScope
            Try
                Dim objSolicitudPaqueDALC As SolicitudPaqueteDALC = Nothing
                objSolicitudPaqueDALC = New SolicitudPaqueteDALC

                objSolicitudPaqueDALC.InsertarSolicitudPaquete(objSolicitudPaqueteBE, bExito, sMensaje)

                objScope.Complete()
            Catch ex As Exception
                Throw
            End Try
        End Using

        Return bExito
    End Function

    Public Function ModificaSolicitudPaquete(ByVal objSolicitudPaqueteBE As SolicitudPaqueteBE, ByRef bExito As Boolean, ByRef sMensaje As String) As Boolean

        Dim objScope As TransactionScope
        objScope = New TransactionScope


        Using objScope
            Try
                Dim objSolicitudPaqueDALC As SolicitudPaqueteDALC = Nothing
                objSolicitudPaqueDALC = New SolicitudPaqueteDALC

                objSolicitudPaqueDALC.ModificaSolicitudPaquete(objSolicitudPaqueteBE, bExito, sMensaje)

                objScope.Complete()
            Catch ex As Exception
                Throw
            End Try
        End Using

        Return bExito
    End Function
    Public Function ListarSolicitudPaquete(ByVal objSolicitudPaqueteBE As SolicitudPaqueteBE) As List(Of SolicitudPaqueteBE)

        Dim objSolPaquete As List(Of SolicitudPaqueteBE) = Nothing
        Dim objSolPaqueteDALC As SolicitudPaqueteDALC = Nothing

        objSolPaqueteDALC = New SolicitudPaqueteDALC
        objSolPaquete = New List(Of SolicitudPaqueteBE)()
        objSolPaquete = objSolPaqueteDALC.ListaSolicitudPaquete(objSolicitudPaqueteBE)

        Return objSolPaquete
    End Function

    Public Function ListarSolicitudPaquete_Update(ByVal objSolicitudPaqueteBE As SolicitudPaqueteBE, ByRef bExito As Boolean, ByRef sMensaje As String) As List(Of SolicitudPaqueteBE)

        Dim objSolPaquete As List(Of SolicitudPaqueteBE) = Nothing
        Dim objSolPaqueteDALC As SolicitudPaqueteDALC = Nothing

        objSolPaqueteDALC = New SolicitudPaqueteDALC
        objSolPaquete = New List(Of SolicitudPaqueteBE)()
        objSolPaquete = objSolPaqueteDALC.ListaSolicitudPaquete_Update(objSolicitudPaqueteBE, bExito, sMensaje)

        Return objSolPaquete
    End Function

    Public Function EliminarSolicitudPaquete(ByVal objSolicitudPaqueteBE As SolicitudPaqueteBE) As Integer

        Dim objScope As TransactionScope
        objScope = New TransactionScope
        Dim iSolicitud As Integer

        Using objScope
            Try
                Dim objSolicitudPaqueDALC As SolicitudPaqueteDALC = Nothing
                objSolicitudPaqueDALC = New SolicitudPaqueteDALC

                iSolicitud = objSolicitudPaqueDALC.EliminarSolicitudPaquete(objSolicitudPaqueteBE)
                objScope.Complete()
            Catch ex As Exception
                MsgBox(ex.Message, vbCritical, "Error del sistema")
                Return Nothing
                Exit Function
            End Try
        End Using

        Return iSolicitud

    End Function

    Public Function ListaSolicitudPaquete_Busqueda(ByVal objSolicitudPaqueteBE As SolicitudPaqueteBE, ByRef bExito As Boolean, ByRef sMensaje As String) As List(Of SolicitudPaqueteBE)

        Dim objSolPaquete As List(Of SolicitudPaqueteBE) = Nothing
        Dim objSolPaqueteDALC As SolicitudPaqueteDALC = Nothing

        objSolPaqueteDALC = New SolicitudPaqueteDALC
        objSolPaquete = New List(Of SolicitudPaqueteBE)()
        objSolPaquete = objSolPaqueteDALC.ListaSolicitudPaquete_Busqueda(objSolicitudPaqueteBE, bExito, sMensaje)

        Return objSolPaquete
    End Function
End Class
